Generally, a computer program is generated by writing the program in source code (programming language) and compiling the source code in order to convert it to machine code (machine language). In order for a computer program to be modified, new source code is added to the program. In many cases, the person who wrote the program adds the new source code. Typically, there is no security mechanism to verify that the person adding the new source code is authorized to revise the program, which can result in unauthorized revisions to the program.
Once the new source code is added, the original program is recompiled to create a revised program. The revised program is verified, tested and provided to customers. Customers typically shut down their systems in order to install the revised program.